草庐IT

JavaScript undefined 替换为 null

全部标签

javascript - Angular 5 服务替换/覆盖

我为我的项目创建了一个包含一些组件和服务的核心库。我用ng-packagr构建了这个库。在引用库的消费项目中,我构建了包含库提供的组件的webapp。到目前为止没有什么特别的。但有时我想要一个组件(来self的库)从库外的服务调用一个方法。这可能吗?我能否以某种方式向库中定义的组件注入(inject)服务?干杯 最佳答案 我以前用这样的东西实现过这个:你的图书馆的服务应该被定义为一个接口(interface)而不是一个具体的实现(就像在OO语言中经常做的那样)。如果您的实现应用程序有时只想传入其自己的服务版本,那么您应该在您的库中创

javascript - 为什么我在进行突变时会收到 "Cannot return null for non-nullable field"错误?

这个问题在这里已经有了答案:WhydoesaGraphQLqueryreturnnull?(6个答案)关闭3年前。我正在尝试服务器端的(Apollo)GraphQL,但遇到了一个可能很愚蠢的问题。我正在尝试注册用户,但不断收到下面链接图片中显示的错误。问题是什么?忽略非常简单的身份验证流程,因为我只是在测试GraphQl以下是相关的代码片段:架构exportdefault`typeUser{id:ID!name:String!email:String!}typeQuery{allUsers:[User]currentUser:User}typeMutation{createAccoun

javascript - SettimeOut 间隔失败,出现 "Cannot convert undefined or null to object"

我正在使用tampermonkey编写用户脚本,但无法解决此错误,我们将不胜感激。我检测到按键很好,空格键会触发此功能,只要按键保持在向下位置,它就会重复自身。控制台正常写入输出大约30秒,然后出现TypeError。根据声誉限制,这是一个屏幕截图:用户脚本://==UserScript==//@nameTESTSTUFF--------------------//@namespacehttp://tampermonkey.net///@version0.1//@descriptiontrytotakeovertheworld!//@authorYou//@run-atdocument

javascript - 如何用另一个对象的匹配键值替换对象键

我有一个对象:{pm:'val1',dm:'val2',cm:'val3'}我想遍历它并检查是否有任何键存在于另一个对象中,如果它们是,则将键替换为来自其他对象的匹配键值。{pm:'价格',dm:'折扣',cm:'成本'}预期的输出是:{价格:'val1',折扣:'val2',成本:'val3' 最佳答案 您可以使用reduce,检查另一个对象中是否存在键,然后将anotherObj中的值添加为最终对象中的键letobj={pm:'val1',dm:'val2',cm:'val3','xy':'val4'}letanotherObj

javascript - 量子对偶性 : variable is null and undefined at the same time?

考虑以下JavaScript代码(在Firefox中测试):functionf(a){if(a==undefined){alert('undefined');}if(a==null){alert('null');}}f();同时显示两个警报,表明这两个陈述都是正确的。你能给出一个合理的解释吗? 最佳答案 ==是一个“软”相等运算符。它使用类型强制将两个等效对象比较为相等。以下所有都是正确的:42=="42"0==false0==""[]==""{}=="[objectObject]"'/(?:)/'==newRegExp相反,您应该

javascript - 为什么将一种元素替换为另一种元素时,replaceChild() 会出现奇怪的行为?

我是javascript的新手,发现了一个我今天无法解释的有趣行为。我有一个自定义(带有图像)在一个网站上,在IE7及以下版本中显示奇怪。为了克服这个问题,我想使用replaceChild()结合getElementsByTag().最初,我只是尝试遍历列表,所以:varhrules=document.getElementsByTagName('hr');for(vari=0;i但是,这是行不通的:它实际上只获取了一半的元素,跳过了所有其他元素。打印i给出的实际数量的半整数值文档中的元素(例如,如果有7个元素,它会打印4。相比之下,以下确实有效:varhrules=document.g

javascript - 如何初始化 firstChild 这样我就不会得到 "x.firstChild is null or not an object"?

在我的JSP/HTML中我有这个:然后在我的javascript部分,我有一个像这样从onclick调用的函数;functionchangeLabel(){exampleLabel.firstChild.nodeValue='LABELHASCHANGED';}这在Chrome中工作正常,在Firefox和IE中什么都不做,页面上出现错误exampleLabel.firstChildisnullornotanobject.好吧,我可以认为没有firstChild,所以尝试做firstChild。任何事情都是NPE,我什至可以认为其他浏览器不会像Chrome那样自己初始化它。问题是,我该

Javascript不区分大小写的匹配和替换?

基本上,我需要能够在字符串(不区分大小写)中找到某些单词(“单词”是指一组字符),如果它们匹配,我需要插入一个该特定字符集的第一个字母后的符号。我不能使用搜索替换,因为那样不会保留大小写。例子:Brownbrowniesareinanoven.如果我要找的词是brown,而我要插入的字符是*,那么结果应该是:B*rownb*rowniesareinanoven.在JS中最好的方法是什么? 最佳答案 带有选项'ig'的正则表达式可以解决问题。"Brownbrowniesareinanoven.".replace(/(b)(rown)/

javascript - 是什么导致某些页面上的 jQuery "$(...) is null"?

我有一些控制隐藏div的javascript。现在它在大多数页面上都有效,但是在其他带有其他javascript的页面上它不起作用...我的js写得不好吗?$(document).ready(function(){$("#user-dropdown-toggle").live('click',function(){$("#left-user-bar").addClass("open");$("#user-dropdown-toggle").addClass("league-judgement");$("body").addClass("league-judgement");});$("

javascript - 替换字符串中的内容所需的 Jquery 函数

我有一个文本区域,用户可以在其中键入内容,还可以包含表情符号,例如:)或;)当按下“发送”时,需要解析文本区域字符串以将任何表情符号转换为用于显示。我可以轻松生成表情符号列表和相关图像,例如:':)'-''';)'-''我假设上面的内容可以放入关联数组中。有人可以指出正确的方向来创建表情符号和htmlimg标签的关联数组,然后解析字符串以用htmlimg标签替换匹配的符号吗?同样出于兴趣,有没有更好的方法来做到这一点?谢谢 最佳答案 您实际上描述了这种行为:varmap={':)':'',';(':''},text=document